package solicitudes.modelo;

import java.util.ArrayList;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.OneToMany;

@Entity
public class Usuario {

	@Id
	String login;
	
	String password;
	
	String nombre;
	
	boolean funcionario;
	
	boolean administrador;
	
	@OneToMany( cascade={CascadeType.ALL, CascadeType.REMOVE}, fetch=FetchType.LAZY, mappedBy="solicitante" )
	List<Solicitud> solicitudes = new ArrayList<Solicitud>();
	
	@OneToMany( cascade={CascadeType.ALL, CascadeType.REMOVE}, fetch=FetchType.LAZY, mappedBy="funcionario" )
	List<Atencion> atenciones = new ArrayList<Atencion>();
	
	public Usuario() { }
	
	public String getLogin() {
		return login;
	}
	
	public void setLogin(String login) {
		this.login = login;
	}
	
	public String getPassword() {
		return password;
	}
	
	public void setPassword(String password) {
		this.password = password;
	}
	
	public String getNombre() {
		return nombre;
	}
	
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	
	public boolean isFuncionario() {
		return funcionario;
	}
	
	public void setFuncionario(boolean funcionario) {
		this.funcionario = funcionario;
	}
	
	public boolean isAdministrador() {
		return administrador;
	}
	
	public void setAdministrador(boolean administrador) {
		this.administrador = administrador;
	}

	public List<Solicitud> getSolicitudes() {
		return solicitudes;
	}
	
	public void setSolicitudes(List<Solicitud> solicitudes) {
		this.solicitudes = solicitudes;
	}
	
	public List<Atencion> getAtenciones() {
		return atenciones;
	}
	
	public void setAtenciones(List<Atencion> atenciones) {
		this.atenciones = atenciones;
	}
	
}
